<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
         // 逻辑运算符
            // !  &&   ||

            // ! 取反  非假即真  非真即假
            // 假值  false   0   NaN    ''   undefined    null
            // console.log( !null )   // true
            // console.log( !'' )     // true
            // console.log( !123 )     // false
            // console.log(!!null)     // false

            // && 并且   与找假   全真为真【返回最后一真值】  一假为假【返回假值】
            // console.log( "hello" && true && 123  ) 
            // console.log( 5 > 3 && 3 - 5 && null && undefined == null )
            //           true  &&  -2   && null && true
            //  
            // console.log( !true && "hello" && 2 + 3 * 5 > 10 )
            //   false 

            // || 或   或找真  全假为假   一真为真
            // console.log( "hello" || true || 123  )   //  "hello"
            // console.log( 5 > 3 || 3 - 5 || null || undefined == null )  // true
            // console.log( null || undefined || NaN == NaN) 
            // console.log(undefined || 123 || !null || 1 + 1 == 2 )


            // 混合运算
            // console.log( 1 + 1 > 5 || !null && "abc" && NaN || !undefined && 5 + 8 !== "hello" )
                    //   false || !null && "abc" && NaN || !undefined  && true
                    //   false || true && "abc" && NaN || true  && true
                    //   false || NaN || true

            // console.log( 1 + 1 > 5 && !null || "abc" || NaN && !undefined || 5 + 8 !== "hello" )
            //           false || "abc" || NaN || true
            // 

            // console.log( true || "abc" && 5 * !3 !== 0  && !null && !"" || false )   // 短路运算
            // true

            // 三元运算符
            // 条件表达式 ? 真执行表达式 : 假执行表达式
            // 声明变量X并赋值100，通过三元运算符判断X是否大于100，条件成立则弹框显示“通过”，不成立弹框显示“不通过”
            var x = 100 ; 
            x >= 100 ? alert("通过") : alert("不通过")


    </script>
</body>
</html>